﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Dziennik_ProfilNauczyciela.Formularze {
    public partial class Form_DodajUzytkownika : Form {
        public Form_DodajUzytkownika() {
            InitializeComponent();
        }

        private void label2_Click(object sender, EventArgs e) {

        }

        private void button1_Click(object sender, EventArgs e) {
            if (textBox1.Text == "" || textBox2.Text == "" || textBox3.Text == "") return;
            else if (radioButton1.Checked) DodajLinq();
            else DodajAdoNet();
        }
        void DodajLinq() {
            string userId = "", haslo = "";
            try {
                SQLInterface.linqDataContext.dodajNauczyciela(textBox2.Text, textBox3.Text, textBox1.Text, ref userId, ref haslo);
            }
            catch (Exception e) {
                textBox4.Text = "Błąd - nie dodano użytkownika\n\n" + e.Message;
                return;
            }
            textBox4.Text = "Numer użytkownika: " + userId + "\nHasło: " + haslo;
        }
        void DodajAdoNet() {
            System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand();
            string userId, haslo;
            cmd.Connection = SQLInterface.conn;
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.CommandText = "dodajNauczyciela";
            cmd.Parameters.Add("@imie", textBox2.Text);
            cmd.Parameters.Add("@nazwisko", textBox3.Text);
            cmd.Parameters.Add("@tytulNaukowy", textBox1.Text);
            cmd.Parameters.Add("@userIdString", SqlDbType.NVarChar).Direction = ParameterDirection.Output;
            cmd.Parameters.Add("@haslo", SqlDbType.NVarChar).Direction = ParameterDirection.Output;
            try {
                cmd.ExecuteNonQuery();
                userId = (string)cmd.Parameters["@userIdString"].Value;
                haslo = (string)cmd.Parameters["@haslo"].Value;
                textBox4.Text = "Numer użytkownika: " + userId + "\nHasło: " + haslo;
            }
            catch (Exception e) {
                textBox4.Text = "Błąd - nie dodano użytkownika\n\n" + e.Message;
                return;
            }            
        }
    }
}
